package com.icarsaas.saas.master.service;

import com.icarsaas.saas.common.enums.StatusEnum;
import com.icarsaas.saas.common.page.SoulPage;
import com.icarsaas.saas.master.model.MasterTenant;
import org.springframework.data.repository.query.Param;

import java.util.List;
import java.util.Map;


/**
 * 租户Schema接口服务
 * @author Administrator
 *
 */
public interface MasterTenantService {
    /**
     * 根据id获取租户信息
     * @param id
     * @return
     */
    public MasterTenant get(Long id);

    /**
     * 保存租户
      * @param entity
     * @return
     */
    public MasterTenant save(MasterTenant entity);

    /**
     * 删除租户
     * @param id
     */
    public void delete(Long id);

    /**
     * 更新状态
     * @param statusEnum
     * @param ids
     * @return
     */
    public Boolean updateStatus(StatusEnum statusEnum, List<Long> ids);

    /**
     * 根据租户id查找租户信息
     * @param tenantId
     * @return
     */
    MasterTenant findByTenantId(@Param("tenantId") String tenantId);

    /**
     * 租户分页列表
      * @param page
     * @param params
     * @return
     */
    public SoulPage<Map<String, Object>> listSoulData(SoulPage<Map<String, Object>> page, Map<String, Object> params);

}
